package cn.com.cifi.mars.entity;


import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@TableName("dm_dm_plan_sign_year")
public class DmDmPlanSignYear implements Serializable {

  @ApiModelProperty(name = "versionId", value = "版本id")
  private String versionId;
  @ApiModelProperty(name = "snapshootYearMonth", value = "数据归属时间")
  private Integer snapshootYearMonth;
  @ApiModelProperty(name = "projectId", value = "项目id")
  private String projectId;
  @ApiModelProperty(name = "groupId", value = "组团id")
  private String groupId;
  @ApiModelProperty(name = "proProductCode", value = "业态编码")
  private String proProductCode;
  @ApiModelProperty(name = "combinationCode", value = "业态组合编码（产品构成code+经营方式code+装修标准code+属性标签code）")
  private String combinationCode;
  @ApiModelProperty(name = "isParking", value = "是否车位楼栋(0.否 1.是)")
  private int isParking;
  @ApiModelProperty(name = "year", value = "年份")
  private String year;

  ///////////////////////////////年初存货//////////////////////////////////
  @ApiModelProperty(name = "earlyNum", value = "<年初存货>套数")
  private BigDecimal earlyNum;
  @ApiModelProperty(name = "earlyArea", value = "<年初存货>面积")
  private BigDecimal earlyArea;
  @ApiModelProperty(name = "earlyAvgPrice", value = "<年初存货>均价")
  private BigDecimal earlyAvgPrice;
  @ApiModelProperty(name = "earlyPrice", value = "<年初存货>金额")
  private BigDecimal earlyPrice;

  @ApiModelProperty(name = "earlySignActualNum", value = "<年初存货>签约实际套数")
  private BigDecimal earlySignActualNum;
  @ApiModelProperty(name = "earlySignActualArea", value = "<年初存货>签约实际面积")
  private BigDecimal earlySignActualArea;
  @ApiModelProperty(name = "earlyAvgSignActualPrice", value = "<年初存货>签约实际均价")
  private BigDecimal earlySignActualAvgPrice;
  @ApiModelProperty(name = "earlySignActualPrice", value = "<年初存货>签约实际金额")
  private BigDecimal earlySignActualPrice;

  ///////////////////////////////年度新供//////////////////////////////////
  @ApiModelProperty(name = "supplyPlanNum", value = "<年度新供>供货套数")
  private BigDecimal supplyNum;
  @ApiModelProperty(name = "supplyPlanArea", value = "<年度新供>供货面积")
  private BigDecimal supplyArea;
  @ApiModelProperty(name = "supplyPlanAvgPrice", value = "<年度新供>供货均价")
  private BigDecimal supplyAvgPrice;
  @ApiModelProperty(name = "supplyPlanPrice", value = "<年度新供>供货金额")
  private BigDecimal supplyPrice;

  @ApiModelProperty(name = "supplyPlanNum", value = "<年度新供>供货计划套数")
  private BigDecimal supplyPlanNum;
  @ApiModelProperty(name = "supplyPlanArea", value = "<年度新供>供货计划面积")
  private BigDecimal supplyPlanArea;
  @ApiModelProperty(name = "supplyPlanAvgPrice", value = "<年度新供>供货计划均价")
  private BigDecimal supplyPlanAvgPrice;
  @ApiModelProperty(name = "supplyPlanPrice", value = "<年度新供>供货计划金额")
  private BigDecimal supplyPlanPrice;

  @ApiModelProperty(name = "supplyActualNum", value = "<年度新供>供货实际套数/车位数")
  private BigDecimal supplyActualNum;
  @ApiModelProperty(name = "supplyActualArea", value = "<年度新供>供货实际面积")
  private BigDecimal supplyActualArea;
  @ApiModelProperty(name = "supplyActualAvgPrice", value = "<年度新供>供货实际均价")
  private BigDecimal supplyActualAvgPrice;
  @ApiModelProperty(name = "supplyActualPrice", value = "<年度新供>供货实际金额")
  private BigDecimal supplyActualPrice;

  @ApiModelProperty(name = "supplySignActualNum", value = "<年度新供>签约实际 套数")
  private BigDecimal supplySignActualNum;
  @ApiModelProperty(name = "supplySignActualArea", value = "<年度新供>签约实际面积")
  private BigDecimal supplySignActualArea;
  @ApiModelProperty(name = "supplySignActualAvgPrice", value = "<年度新供>签约实际均价")
  private BigDecimal supplySignActualAvgPrice;
  @ApiModelProperty(name = "supplySignActualPrice", value = "<年度新供>签约实际金额")
  private BigDecimal supplySignActualPrice;

  ///////////////////////////////////年度综合////////////////////////////////////

  @ApiModelProperty(name = "syntheticalAvailableNum", value = "<年度综合>可售套数")
  private BigDecimal syntheticalAvailableNum;
  @ApiModelProperty(name = "syntheticalAvailableArea", value = "<年度综合>可售面积")
  private BigDecimal syntheticalAvailableArea;
  @ApiModelProperty(name = "syntheticalAvailableAvgPrice", value = "<年度综合>可售均价")
  private BigDecimal syntheticalAvailableAvgPrice;
  @ApiModelProperty(name = "syntheticalAvailablePrice", value = "<年度综合>可售金额")
  private BigDecimal syntheticalAvailablePrice;

  @ApiModelProperty(name = "syntheticalSignPlanNum", value = "<年度综合>签约计划套数")
  private BigDecimal syntheticalSignPlanNum;
  @ApiModelProperty(name = "syntheticalSignPlanArea", value = "<年度综合>签约计划面积")
  private BigDecimal syntheticalSignPlanArea;
  @ApiModelProperty(name = "syntheticalSignPlanAvgPrice", value = "<年度综合>签约计划均价")
  private BigDecimal syntheticalSignPlanAvgPrice;
  @ApiModelProperty(name = "syntheticalSignPlanPrice", value = "<年度综合>签约计划金额")
  private BigDecimal syntheticalSignPlanPrice;

  @ApiModelProperty(name = "syntheticalSignActualNum", value = "<年度综合>签约实际 套数/车位数")
  private BigDecimal syntheticalSignActualNum;
  @ApiModelProperty(name = "syntheticalSignActualArea", value = "<年度综合>签约实际面积")
  private BigDecimal syntheticalSignActualArea;
  @ApiModelProperty(name = "syntheticalSignActualAvgPrice", value = "<年度综合>签约实际均价")
  private BigDecimal syntheticalSignActualAvgPrice;
  @ApiModelProperty(name = "syntheticalSignActualPrice", value = "<年度综合>签约实际金额")
  private BigDecimal syntheticalSignActualPrice;


  ///////////////////////////////年初存货//////////////////////////////////
  @ApiModelProperty(name = "earlyNumC", value = "<年初存货>车位数-车位")
  private BigDecimal earlyNumC;
  @ApiModelProperty(name = "earlyAreaC", value = "<年初存货>面积-车位")
  private BigDecimal earlyAreaC;
  @ApiModelProperty(name = "earlyAvgPriceC", value = "<年初存货>均价-车位")
  private BigDecimal earlyAvgPriceC;
  @ApiModelProperty(name = "earlyPriceC", value = "<年初存货>金额-车位")
  private BigDecimal earlyPriceC;

  @ApiModelProperty(name = "earlySignActualNumC", value = "<年初存货>签约实际车位数-车位")
  private BigDecimal earlySignActualNumC;
  @ApiModelProperty(name = "earlySignActualAreaC", value = "<年初存货>签约实际面积-车位")
  private BigDecimal earlySignActualAreaC;
  @ApiModelProperty(name = "earlySignActualAvgPriceC", value = "<年初存货>签约实际均价-车位")
  private BigDecimal earlySignActualAvgPriceC;
  @ApiModelProperty(name = "earlySignActualPriceC", value = "<年初存货>签约实际金额-车位")
  private BigDecimal earlySignActualPriceC;

  ///////////////////////////////年度新供//////////////////////////////////
  @ApiModelProperty(name = "supplyNumC", value = "<年度新供>供货车位数-车位")
  private BigDecimal supplyNumC;
  @ApiModelProperty(name = "supplyAreaC", value = "<年度新供>供货面积-车位")
  private BigDecimal supplyAreaC;
  @ApiModelProperty(name = "supplyAvgPriceC", value = "<年度新供>供货均价-车位")
  private BigDecimal supplyAvgPriceC;
  @ApiModelProperty(name = "supplyPriceC", value = "<年度新供>供货金额-车位")
  private BigDecimal supplyPriceC;

  @ApiModelProperty(name = "supplyPlanNumC", value = "<年度新供>供货计划车位数-车位")
  private BigDecimal supplyPlanNumC;
  @ApiModelProperty(name = "supplyPlanAreaC", value = "<年度新供>供货计划面积-车位")
  private BigDecimal supplyPlanAreaC;
  @ApiModelProperty(name = "supplyPlanAvgPriceC", value = "<年度新供>供货计划均价-车位")
  private BigDecimal supplyPlanAvgPriceC;
  @ApiModelProperty(name = "supplyPlanPriceC", value = "<年度新供>供货计划金额-车位")
  private BigDecimal supplyPlanPriceC;

  @ApiModelProperty(name = "supplyActualNumC", value = "<年度新供>供货实际车位数-车位")
  private BigDecimal supplyActualNumC;
  @ApiModelProperty(name = "supplyActualAreaC", value = "<年度新供>供货实际面积-车位")
  private BigDecimal supplyActualAreaC;
  @ApiModelProperty(name = "supplyActualAvgPriceC", value = "<年度新供>供货实际均价-车位")
  private BigDecimal supplyActualAvgPriceC;
  @ApiModelProperty(name = "supplyActualPriceC", value = "<年度新供>供货实际金额-车位")
  private BigDecimal supplyActualPriceC;

  @ApiModelProperty(name = "supplySignActualNumC", value = "<年度新供>签约实际车位数-车位")
  private BigDecimal supplySignActualNumC;
  @ApiModelProperty(name = "supplySignActualAreaC", value = "<年度新供>签约实际面积-车位")
  private BigDecimal supplySignActualAreaC;
  @ApiModelProperty(name = "supplySignActualAvgPriceC", value = "<年度新供>签约实际均价-车位")
  private BigDecimal supplySignActualAvgPriceC;
  @ApiModelProperty(name = "supplySignActualPriceC", value = "<年度新供>签约实际金额-车位")
  private BigDecimal supplySignActualPriceC;

  ///////////////////////////////////年度综合////////////////////////////////////

  @ApiModelProperty(name = "syntheticalAvailableNumC", value = "<年度综合>可售车位数-车位")
  private BigDecimal syntheticalAvailableNumC;
  @ApiModelProperty(name = "syntheticalAvailableAreaC", value = "<年度综合>可售面积-车位")
  private BigDecimal syntheticalAvailableAreaC;
  @ApiModelProperty(name = "syntheticalAvailableAvgPriceC", value = "<年度综合>可售均价-车位")
  private BigDecimal syntheticalAvailableAvgPriceC;
  @ApiModelProperty(name = "syntheticalAvailablePriceC", value = "<年度综合>可售金额-车位")
  private BigDecimal syntheticalAvailablePriceC;

  @ApiModelProperty(name = "syntheticalSignPlanNumC", value = "<年度综合>签约计划车位数-车位")
  private BigDecimal syntheticalSignPlanNumC;
  @ApiModelProperty(name = "syntheticalSignPlanAreaC", value = "<年度综合>签约计划面积-车位")
  private BigDecimal syntheticalSignPlanAreaC;
  @ApiModelProperty(name = "syntheticalSignPlanAvgPriceC", value = "<年度综合>签约计划均价-车位")
  private BigDecimal syntheticalSignPlanAvgPriceC;
  @ApiModelProperty(name = "syntheticalSignPlanPriceC", value = "<年度综合>签约计划金额-车位")
  private BigDecimal syntheticalSignPlanPriceC;

  @ApiModelProperty(name = "syntheticalSignActualNumC", value = "<年度综合>签约实际车位数-车位")
  private BigDecimal syntheticalSignActualNumC;
  @ApiModelProperty(name = "syntheticalSignActualAreaC", value = "<年度综合>签约实际面积-车位")
  private BigDecimal syntheticalSignActualAreaC;
  @ApiModelProperty(name = "syntheticalSignActualAvgPriceC", value = "<年度综合>签约实际均价-车位")
  private BigDecimal syntheticalSignActualAvgPriceC;
  @ApiModelProperty(name = "syntheticalSignActualPriceC", value = "<年度综合>签约实际金额-车位")
  private BigDecimal syntheticalSignActualPriceC;

  public void initialize() {
    this.earlyNum = BigDecimal.ZERO;
    this.earlyArea = BigDecimal.ZERO;
    this.earlyAvgPrice = BigDecimal.ZERO;
    this.earlyPrice = BigDecimal.ZERO;
    this.earlySignActualNum = BigDecimal.ZERO;
    this.earlySignActualArea = BigDecimal.ZERO;
    this.earlySignActualAvgPrice = BigDecimal.ZERO;
    this.earlySignActualPrice = BigDecimal.ZERO;
    this.supplyNum = BigDecimal.ZERO;
    this.supplyArea = BigDecimal.ZERO;
    this.supplyAvgPrice = BigDecimal.ZERO;
    this.supplyPrice = BigDecimal.ZERO;
    this.supplyPlanNum = BigDecimal.ZERO;
    this.supplyPlanArea = BigDecimal.ZERO;
    this.supplyPlanAvgPrice = BigDecimal.ZERO;
    this.supplyPlanPrice = BigDecimal.ZERO;
    this.supplyActualNum = BigDecimal.ZERO;
    this.supplyActualArea = BigDecimal.ZERO;
    this.supplyActualAvgPrice = BigDecimal.ZERO;
    this.supplyActualPrice = BigDecimal.ZERO;
    this.supplySignActualNum = BigDecimal.ZERO;
    this.supplySignActualArea = BigDecimal.ZERO;
    this.supplySignActualAvgPrice = BigDecimal.ZERO;
    this.supplySignActualPrice = BigDecimal.ZERO;
    this.syntheticalAvailableNum = BigDecimal.ZERO;
    this.syntheticalAvailableArea = BigDecimal.ZERO;
    this.syntheticalAvailableAvgPrice = BigDecimal.ZERO;
    this.syntheticalAvailablePrice = BigDecimal.ZERO;
    this.syntheticalSignPlanNum = BigDecimal.ZERO;
    this.syntheticalSignPlanArea = BigDecimal.ZERO;
    this.syntheticalSignPlanAvgPrice = BigDecimal.ZERO;
    this.syntheticalSignPlanPrice = BigDecimal.ZERO;
    this.syntheticalSignActualNum = BigDecimal.ZERO;
    this.syntheticalSignActualArea = BigDecimal.ZERO;
    this.syntheticalSignActualAvgPrice = BigDecimal.ZERO;
    this.syntheticalSignActualPrice = BigDecimal.ZERO;
    this.earlyNumC = BigDecimal.ZERO;
    this.earlyAreaC = BigDecimal.ZERO;
    this.earlyAvgPriceC = BigDecimal.ZERO;
    this.earlyPriceC = BigDecimal.ZERO;
    this.earlySignActualNumC = BigDecimal.ZERO;
    this.earlySignActualAreaC = BigDecimal.ZERO;
    this.earlySignActualAvgPriceC = BigDecimal.ZERO;
    this.earlySignActualPriceC = BigDecimal.ZERO;
    this.supplyNumC = BigDecimal.ZERO;
    this.supplyAreaC = BigDecimal.ZERO;
    this.supplyAvgPriceC = BigDecimal.ZERO;
    this.supplyPriceC = BigDecimal.ZERO;
    this.supplyPlanNumC = BigDecimal.ZERO;
    this.supplyPlanAreaC = BigDecimal.ZERO;
    this.supplyPlanAvgPriceC = BigDecimal.ZERO;
    this.supplyPlanPriceC = BigDecimal.ZERO;
    this.supplyActualNumC = BigDecimal.ZERO;
    this.supplyActualAreaC = BigDecimal.ZERO;
    this.supplyActualAvgPriceC = BigDecimal.ZERO;
    this.supplyActualPriceC = BigDecimal.ZERO;
    this.supplySignActualNumC = BigDecimal.ZERO;
    this.supplySignActualAreaC = BigDecimal.ZERO;
    this.supplySignActualAvgPriceC = BigDecimal.ZERO;
    this.supplySignActualPriceC = BigDecimal.ZERO;
    this.syntheticalAvailableNumC = BigDecimal.ZERO;
    this.syntheticalAvailableAreaC = BigDecimal.ZERO;
    this.syntheticalAvailableAvgPriceC = BigDecimal.ZERO;
    this.syntheticalAvailablePriceC = BigDecimal.ZERO;
    this.syntheticalSignPlanNumC = BigDecimal.ZERO;
    this.syntheticalSignPlanAreaC = BigDecimal.ZERO;
    this.syntheticalSignPlanAvgPriceC = BigDecimal.ZERO;
    this.syntheticalSignPlanPriceC = BigDecimal.ZERO;
    this.syntheticalSignActualNumC = BigDecimal.ZERO;
    this.syntheticalSignActualAreaC = BigDecimal.ZERO;
    this.syntheticalSignActualAvgPriceC = BigDecimal.ZERO;
    this.syntheticalSignActualPriceC = BigDecimal.ZERO;
  }
}
